
<!DOCTYPE html>
<html>
	<head>
		<title>商品分类表-添加/修改</title>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<!-- 所有的 css js 资源 -->
		<link rel="stylesheet" href="https://unpkg.com/element-ui@2.13.0/lib/theme-chalk/index.css">
		<link rel="stylesheet" href="../../static/sa.css"> 
		<script src="https://unpkg.com/vue@2.6.10/dist/vue.min.js"></script>
		<script src="https://unpkg.com/element-ui@2.13.0/lib/index.js"></script>
		<script src="https://unpkg.com/jquery@3.4.1/dist/jquery.js"></script>
		<script src="https://www.layuicdn.com/layer-v3.1.1/layer.js"></script>
		<script src="../../static/sa.js"></script>
		<script src="../../static/kj/upload-util.js"></script>
		<style type="text/css">
			.c-panel .el-form .c-label{width: 7em !important;}
			.c-panel .el-form .el-input{width: 250px;}
		</style>
	</head>
	<body>
		<div class="vue-box" :class="{sbot: id}" style="display: none;" :style="'display: block;'">
			<!-- ------- 内容部分 ------- -->
			<div class="s-body">
				<div class="c-panel">
					<div class="c-title">数据添加</div>
					<el-form size="mini" v-if="m">
						<div class="c-item" style="width: 100%;">
							<label class="c-label" style="vertical-align: top;">轮播图片：</label>
							<img 
								:src="m.img_src" 
								style="width: 300px; height: 150px; border-radius: 2px; vertical-align: middle; margin-right: 0.5em; cursor: pointer;" 
								v-if="m.img_src != null && m.img_src != '' "  
								@click="sa.showImage(m.img_src)"
								/>
							<span style="color: #999; margin-left: 0.5em;" v-else>（未上传）</span>
							<el-link type="primary" style="line-height: 1.5em;" @click="sa.uploadImage(src => m.img_src = src)">选择上传</el-link>
						</div>
						<div class="c-item br">
							<label class="c-label">轮播标题：</label>
							<el-input size="mini" v-model="m.title"></el-input>
						</div>
						
						<!-- ============================== 轮播图的类型 start ============================== -->
						<!-- type == 1 时，商品链接 -->
						<span v-if="true">
							<div class="c-item br">
								<label class="c-label">点击之后：</label>
								<el-select size="mini" v-model="m.action_way">
									<el-option label="无动作" :value="1"></el-option>
									<el-option label="站外链接" :value="2"></el-option>
									<el-option label="打开一个商品" :value="3"></el-option>
								</el-select>
							</div>
							<div class="c-item br" v-if="m.action_way == 2">
								<label class="c-label">链接地址：</label>
								<el-input size="mini" v-model="m.action_value" placeholder="请输入一个站外链接地址"></el-input>
							</div>
							<div class="c-item br" v-if="m.action_way == 3">
								<label class="c-label">商品id：</label>
								<el-input size="mini" v-model="m.action_value" placeholder="请输入要打开的商品id"></el-input>
							</div>
						</span>
						<!-- ============================== 轮播图的类型 end ============================== -->
						<div class="c-item br">
							<label class="c-label">轮播状态：</label>
							<el-radio-group v-model="m.status" size="mini">
								<el-radio-button :label="1">显示</el-radio-button>
								<el-radio-button :label="2">隐藏</el-radio-button>
							</el-radio-group>
						</div>
						<div class="c-item br s-ok">
							<label class="c-label"></label>
							<el-button size="mini" type="primary" icon="el-icon-plus" @click="ok()">保存</el-button>
						</div>
					</el-form>
				</div>
			</div>
			<!-- ------- 底部按钮 ------- -->
			<div class="s-foot">
				<el-button size="mini" type="primary" @click="ok()">确定</el-button>
				<el-button size="mini" @click="sa.closeCurrIframe()">取消</el-button>
			</div>
		</div>
        <script>
			
			var app = new Vue({
				el: '.vue-box',
				data: {
					id: sa.p('id', 0),		// 获取超链接中的id参数（0=添加，非0=修改） 
					m: null,		// 实体对象 
				},
				methods: {
					// 创建一个 默认Model 
					createModel: function() {
						return {
							id: 0,
							title: '',
							img_src: '',
							type: sa.p('type', 1),
							link_way: 1,
							link_value: '',
							status: 1,
							// sort: ,  后台java里获取时间戳来弄
						}
					},
					// 表单验证
					submitCheck: function() {
						var m = this.m; 
						try{
							var m = this.m;		// 获取 m对象 
							// sa.checkNull(m.id, '请输入id');
							sa.checkNull(m.title, '请输入标题');
							sa.checkNull(m.img_src, '请选择一张图片');
							sa.checkNull(m.action_way, '请选择点击后的动作');
							sa.check((m.action_way != 1 && sa.isNull(m.action_value)), '请完善表单');
							return 'ok';	// 全部通过验证，返回ok 表示正确 
						} catch(e) {
							sa.error(e);
						}
					},
					// 提交数据 
					ok: function(){
						// 验证  
						if(this.submitCheck() != 'ok') {
							return;
						}
						// 开始增加或修改
						this.m.create_time = undefined;
						if(this.m.id <= 0) {	// 添加  
							sa.ajax('/SysSwiper/add', this.m, function(res){
								layer.alert('添加成功', this.clean); 
							}.bind(this));
						} else {			// 修改
							sa.ajax('/SysSwiper/update', this.m, function(res){
								layer.alert('修改成功', this.clean); 
							}.bind(this));
						}
					},
					// 添加/修改 完成后的动作
					clean: function() {
						if(this.id == 0) {
							this.m = this.createModel();
						} else {
							parent.app.f5();		// 刷新父页面列表
							sa.closeCurrIframe();	// 关闭本页 
						}
					}
				},
				mounted: function(){
					if(this.id <= 0) {
						this.m = this.createModel();
					} else {
						sa.ajax('/SysSwiper/getById?id=' + this.id, function(res) {
							this.m = res.data;
						}.bind(this))
					}
				}
			})
			
		</script>
	</body>
</html>